<?php
/**
 * CSVファイルアップロード対象
 * 
 * @author tanaka
 * @package File_Csv
 * @subpackage ReaderUploaded
 */
class File_Csv_ReaderUploaded extends File_Csv_Reader
{
	/**
	* アップロードされたかフラグ
	* @var bool
	*/
	protected $_isUploaded = false;
	
	/**
	 * アップロードされたか返します。
	 *
	 * @return bool
	 */
	public function isUploaded()
	{
		return $this->_isUploaded;
	}
	
	/**
	 * コンストラクタ
	 *
	 * @param string $name input type=fileのname属性
	 * @return
	 */
	public function __construct($name, $isExistHeaderLine = true)
	{
		if (!isset($_FILES[$name])) return;
	
		$this->_isUploaded = true;
		$fileInfo = $_FILES[$name];
	
		switch (intval($fileInfo['error'])) {
			case UPLOAD_ERR_OK:
				break;
	
			case UPLOAD_ERR_NO_FILE:
				$this->_isUploaded = false;
				return;
	
			default:
				$this->_error = parent::ERROR_ANYTHING_UPLOAD;
			return;
		}
	
		$targetFile = $fileInfo['tmp_name'];
		parent::__construct($targetFile, $isExistHeaderLine);
	}
}